Implementar Google Navigation SDK

Descripcion

Como implementar en React-Native el SDK de Google Navigation.

Código de Ejemplo (Está en Azure Devops se necesita cuenta con permisos)

Metodo

Pasos:

Troubleshooting

Fallo Gradle y ADC (Application Default Credentials)

Al intentar compilar el proyecto obtenemos el siguiente error:

An exception occurred applying plugin request [id: 'com.google.cloud.artifactregistry.gradle-plugin', version: '2.1.1']
> Failed to apply plugin 'com.google.cloud.artifactregistry.gradle-plugin'.
   > Failed to get access token from gcloud or Application Default Credentials

Este error se produce porque no estámos logueados con gcloud, para poder loguearnos primero tenemos que instalar el google cloud cli:

Instalar Google Cloud CLI

Una vez termina la instalación se inicia la configuración inicial de gcloud, donde le indicaremos lo siguiente:

NOTA: si no se inicia la configuración de gcloud podemos hacerlo manualmente desde una consola con el comando "gcloud init"

Una vez finalizada la instalación y la configuración inicial de gcloud ya podemos hacer el build de nuestra aplicación.

Not Enough Space

Al intentar desplegar la aplicación en nuestro dispositivo obtenemos el siguiente error:

com.android.ddmlib.InstallException: Unknown failure: Exception occurred while executing 'install':
android.os.ParcelableException: java.io.IOException: Requested internal only, but not enough space

Este error se produce porque el dispositivo no tienen espacio suficiente para instalar la aplicación, es necesario crear un dispositivo con más almacenamiento.

Este fallo suele ser común al trabajar con React-Native ya que las aplicaciones pesan unos 500MB de base y los emuladores que se crear por defecto no suelen tener un almacenamiento tan grande.

Not a supported repository protocol 'artifactregistry'

Al intentar ejecutar la aplicación nos encontramos con el siguiente error:

Could not determine the dependencies of task ':app:compileDebugJavaWithJavac'.
> Could not resolve all dependencies for configuration ':app:debugRuntimeClasspath'.
   > Not a supported repository protocol 'artifactregistry': valid protocols are [file, http, https, gcs, s3, sftp]

Para solucionar este error tenemos que incluir la siguietne linea en el build.gradle relativo al modulo:

apply plugin: 'com.google.cloud.artifactregistry.gradle-plugin'

Si el plugin que usa el "artifactregistry" está en una librería la linea anterior tiene que ir en el build.gradle de la applicación que está usando dicha librería.

Tags

Google Navigation | SDK